﻿using System;
using Microsoft.SPOT;

namespace Flight.Controller.Entities
{
    /// <summary>
    /// Represents a flight action to execute.
    /// </summary>
    public class FlightAction
    {
        /// <summary>
        /// Move to execute.
        /// </summary>
        public FlightActionMove Move { get; set; }

        /// <summary>
        /// Value for the move to execute.
        /// </summary>
        public short Value { get; set; }

        /// <summary>
        /// Speed at which the move should be execute.
        /// </summary>
        public byte Speed { get; set; }

        public override string ToString()
        {
            return Move.ToString() + " | Value : " + Value + " | Speed : " + Speed;
        }
    }

    public enum FlightActionMove
    {
        YAW = 1,
        PITCH = 2,
        ROLL = 3,
        STABILIZE = 4,
        ALTITUDE = 5
    }
}
